package neo.core.util;

import java.io.File;
import java.io.IOException;

import neo.core.Constants;
import neo.core.bean.BeanManager;

import org.apache.commons.io.FileUtils;

public class FileUtil {
	/**
	 * 生成文件
	 * @param path 路径
	 * @param fileName 文件名 
	 * @param content 文件内容
	 */
	public static void generateFile(String path, String fileName, String content) {
		//判断目录存在性
		File dir = new File(BeanManager.getServletContext().getRealPath(path));
		if (!dir.exists()) {
			dir.mkdirs();
		}

		//判断文件存在性
		File file = new File(BeanManager.getServletContext().getRealPath(path + "/" + fileName));
		if (file.exists()) {
			file.delete();
		}

		//写文件
		try {
			FileUtils.writeStringToFile(file, content, Constants.ENCODING);
		} catch (IOException e) {
		}
	}

	/**
	 * 清除缓存文件
	 * @param path 路径
	 * @param fileName 文件名
	 */
	public static void clearFileCache(String path, String fileName) {
		File f = new File(BeanManager.getServletContext()
				.getRealPath(Constants.CACHE_BASE_PATH + path + "/" + fileName));
		if (f.exists()) {
			f.delete();
		}
	}

	/**
	 * 添加缓存文件
	 * @param path 路径
	 * @param fileName 文件名
	 * @param content 文件内容
	 */
	public static void addFileCache(String path, String fileName, String content) {
		generateFile(Constants.CACHE_BASE_PATH + path, fileName, content);
	}
}